package administratzailea;

import hasiera_pantaila.DBKudeatzailea;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.swing.ButtonGroup;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JRadioButton;
import javax.swing.JButton;

public class EI_Idazkaria_sortu_1_1_1 extends JFrame {

	private JPanel contentPane;
	private JTextField izena;
	private JTextField lehenAbiz;
	private JTextField bigarrenAbiz;
	private JTextField nan;
	private JTextField data;
	private JTextField helbide;
	private JTextField atari;
	private JTextField solairu;
	private JTextField hizkia;
	private JTextField probintzia;
	private JTextField herria;
	private JTextField telf;
	private JTextField mugi;
	private JTextField email;
	private JTextField pasahitz;
	private JTextField errepikatu;
	private JTextField postakod;
	private JRadioButton Gizona;
	private JRadioButton Emakumea;
	private ButtonGroup sexua;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					EI_Idazkaria_sortu_1_1_1 frame = new EI_Idazkaria_sortu_1_1_1();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public EI_Idazkaria_sortu_1_1_1() {
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 626, 420);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		JLabel lblIdazkariaSortu = new JLabel("IDAZKARIA SORTU:");
		lblIdazkariaSortu.setFont(new Font("Tahoma", Font.BOLD, 14));
		lblIdazkariaSortu.setForeground(Color.BLACK);
		lblIdazkariaSortu.setBounds(10, 11, 150, 14);
		contentPane.add(lblIdazkariaSortu);
		
		izena = new JTextField();
		izena.setBounds(48, 40, 183, 20);
		contentPane.add(izena);
		izena.setColumns(10);
		
		JLabel lblLehenengoAbizena = new JLabel("Lehenengo abizena");
		lblLehenengoAbizena.setBounds(10, 70, 127, 14);
		contentPane.add(lblLehenengoAbizena);
		
		lehenAbiz = new JTextField();
		lehenAbiz.setBounds(125, 71, 172, 20);
		contentPane.add(lehenAbiz);
		lehenAbiz.setColumns(10);
		
		JLabel lblBigarrenAbizena = new JLabel("Bigarren abizena");
		lblBigarrenAbizena.setBounds(10, 95, 105, 14);
		contentPane.add(lblBigarrenAbizena);
		
		JLabel lblIzena = new JLabel("Izena");
		lblIzena.setBounds(10, 43, 46, 14);
		contentPane.add(lblIzena);
		
		bigarrenAbiz = new JTextField();
		bigarrenAbiz.setBounds(125, 95, 172, 20);
		contentPane.add(bigarrenAbiz);
		bigarrenAbiz.setColumns(10);
		
		JLabel lblNana = new JLabel("NAN zenbakia");
		lblNana.setBounds(307, 43, 87, 14);
		contentPane.add(lblNana);
		
		nan = new JTextField();
		nan.setBounds(397, 40, 100, 20);
		contentPane.add(nan);
		nan.setColumns(10);
		
		JLabel lblJaiotzeData = new JLabel("Jaiotze data");
		lblJaiotzeData.setBounds(307, 70, 74, 14);
		contentPane.add(lblJaiotzeData);
		
		data = new JTextField();
		data.setBounds(397, 67, 100, 20);
		contentPane.add(data);
		data.setColumns(10);
		
		JLabel lblSexua = new JLabel("Sexua");
		lblSexua.setBounds(295, 95, 46, 14);
		contentPane.add(lblSexua);
		
		 sexua = new ButtonGroup();
		
		 Gizona = new JRadioButton("Gizona");
		Gizona.setBounds(347, 91, 67, 23);
		contentPane.add(Gizona);
		
		 Emakumea = new JRadioButton("Emakumea");
		Emakumea.setBounds(416, 91, 100, 23);
		contentPane.add(Emakumea);
		
		sexua.add(Gizona);
		sexua.add(Emakumea);
		
		JLabel lblHelbidea = new JLabel("Helbidea");
		lblHelbidea.setBounds(10, 120, 58, 14);
		contentPane.add(lblHelbidea);
		
		helbide = new JTextField();
		helbide.setBounds(74, 120, 223, 20);
		contentPane.add(helbide);
		helbide.setColumns(10);
		
		JLabel lblAtaria = new JLabel("Ataria");
		lblAtaria.setBounds(307, 123, 46, 14);
		contentPane.add(lblAtaria);
		
		atari = new JTextField();
		atari.setBounds(347, 120, 40, 20);
		contentPane.add(atari);
		atari.setColumns(10);
		
		JLabel lblSolairua = new JLabel("Solairua");
		lblSolairua.setBounds(397, 123, 58, 14);
		contentPane.add(lblSolairua);
		
		solairu = new JTextField();
		solairu.setBounds(449, 121, 40, 20);
		contentPane.add(solairu);
		solairu.setColumns(10);
		
		JLabel lblHizkia = new JLabel("Hizkia");
		lblHizkia.setBounds(499, 123, 46, 14);
		contentPane.add(lblHizkia);
		
		hizkia = new JTextField();
		hizkia.setBounds(541, 121, 23, 20);
		contentPane.add(hizkia);
		hizkia.setColumns(10);
		
		JLabel lblProbintzia = new JLabel("Probintzia");
		lblProbintzia.setBounds(10, 154, 58, 14);
		contentPane.add(lblProbintzia);
		
		probintzia = new JTextField();
		probintzia.setBounds(74, 151, 110, 20);
		contentPane.add(probintzia);
		probintzia.setColumns(10);
		
		JLabel lblHerria = new JLabel("Herria");
		lblHerria.setBounds(194, 154, 46, 14);
		contentPane.add(lblHerria);
		
		herria = new JTextField();
		herria.setBounds(240, 151, 100, 20);
		contentPane.add(herria);
		herria.setColumns(10);
		
		JLabel lblTelefonoa = new JLabel("Telefonoa");
		lblTelefonoa.setBounds(10, 192, 58, 14);
		contentPane.add(lblTelefonoa);
		
		telf = new JTextField();
		telf.setBounds(74, 189, 110, 20);
		contentPane.add(telf);
		telf.setColumns(10);
		
		JLabel lblMugikorra = new JLabel("Mugikorra");
		lblMugikorra.setBounds(194, 192, 58, 14);
		contentPane.add(lblMugikorra);
		
		mugi = new JTextField();
		mugi.setBounds(265, 189, 105, 20);
		contentPane.add(mugi);
		mugi.setColumns(10);
		
		JLabel lblEmailHelbidea = new JLabel("E-mail helbidea");
		lblEmailHelbidea.setBounds(380, 192, 92, 14);
		contentPane.add(lblEmailHelbidea);
		
		email = new JTextField();
		email.setBounds(475, 189, 125, 20);
		contentPane.add(email);
		email.setColumns(10);
		
		JLabel lblPasahitza = new JLabel("Pasahitza");
		lblPasahitza.setBounds(10, 227, 58, 14);
		contentPane.add(lblPasahitza);
		
		pasahitz = new JTextField();
		pasahitz.setBounds(74, 224, 178, 20);
		contentPane.add(pasahitz);
		pasahitz.setColumns(10);
		
		JLabel lblPasahitzakKaraktere = new JLabel("Pasahitzak 6 karaktere");
		lblPasahitzakKaraktere.setFont(new Font("Tahoma", Font.BOLD, 11));
		lblPasahitzakKaraktere.setForeground(Color.BLUE);
		lblPasahitzakKaraktere.setBounds(74, 245, 150, 14);
		contentPane.add(lblPasahitzakKaraktere);
		
		JLabel lblBainoGehiagoIzan = new JLabel("baino gehiago izan behar ditu.");
		lblBainoGehiagoIzan.setFont(new Font("Tahoma", Font.BOLD, 11));
		lblBainoGehiagoIzan.setForeground(Color.BLUE);
		lblBainoGehiagoIzan.setBounds(74, 259, 183, 14);
		contentPane.add(lblBainoGehiagoIzan);
		
		JLabel lblHizkiakIzanDaitezke = new JLabel("Hizkiak izan daitezke baita ere.");
		lblHizkiakIzanDaitezke.setFont(new Font("Tahoma", Font.BOLD, 11));
		lblHizkiakIzanDaitezke.setForeground(Color.BLUE);
		lblHizkiakIzanDaitezke.setBounds(74, 273, 183, 14);
		contentPane.add(lblHizkiakIzanDaitezke);
		
		JLabel lblPasahitzaErrepikatu = new JLabel("Pasahitza errepikatu");
		lblPasahitzaErrepikatu.setBounds(262, 227, 119, 14);
		contentPane.add(lblPasahitzaErrepikatu);
		
		errepikatu = new JTextField();
		errepikatu.setBounds(390, 224, 155, 20);
		contentPane.add(errepikatu);
		errepikatu.setColumns(10);
		
		JButton btnGorde = new JButton("Gorde");
		btnGorde.addActionListener(new ActionListener() { 
			
			protected boolean zerbaitIdatziDu(){
			return izena.getText().length() > 0 && lehenAbiz.getText().length() > 0 && bigarrenAbiz.getText().length() > 0 
	                    		&& nan.getText().length() > 0 && data.getText().length() > 0 && helbide.getText().length() > 0
	                    		&& helbide.getText().length() > 0 && atari.getText().length() > 0 && solairu.getText().length() > 0
	                    		&& hizkia.getText().length() > 0 && probintzia.getText().length() > 0 && herria.getText().length() > 0
	                    		&& telf.getText().length() > 0 && mugi.getText().length() > 0 && email.getText().length() > 0
	                    		&& pasahitz.getText().length() > 0 && errepikatu.getText().length() > 0 && postakod.getText().length() >0;
	                    }
			public void actionPerformed(ActionEvent arg0) {
				 try
	                {
	                    if (!zerbaitIdatziDu()){
	                      JOptionPane.showMessageDialog(null, "Ezin da eremua hutsik egon");
	                    }else if (!existitzenDa(nan.getText())  ){
	                    			// datubasean idazkari berri bat txertatu
	                    			IdazkariaSortu(izena.getText(),lehenAbiz.getText(), bigarrenAbiz.getText(), nan.getText(), data.getText(), 
	  	                        		  Gizona.isSelected()?"g":"e" ,helbide.getText(), Integer.parseInt(atari.getText()), Integer.parseInt(solairu.getText()), hizkia.getText(),
	  	                        		  probintzia.getText(), herria.getText(),Integer.parseInt(postakod.getText()), Integer.parseInt(telf.getText()), Integer.parseInt(mugi.getText()),email.getText(),
	  	                        		  pasahitz.getText(), errepikatu.getText() );
	  	                        		  
	  	                        		  // "Ondo sartu duzu!" mezua bistaratu
	  	                        	 EI_Idazkaria_sortuta_mezua_1_1_1_1 mezua=new EI_Idazkaria_sortuta_mezua_1_1_1_1();
	  	                        	// hobeto eraikitzailean egitea	  
	  	                        	   mezua.setVisible(true);
	  	                        		   // uneko inprimakia izkutatu
	  	                        	EI_Idazkaria_sortu_1_1_1.this.setVisible(false);
	  	                   
	                   } // if
	                   
	                  } catch (Exception e){
	                    e.printStackTrace();
	                }
	        	} });

	   		
		btnGorde.setBounds(193, 337, 89, 23);
		contentPane.add(btnGorde);
		
		JButton btnAtzera = new JButton("Atzera");
		btnAtzera.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				EI_Idazkarien_informazioa_maneiatu_1_1 bat=new EI_Idazkarien_informazioa_maneiatu_1_1();
				bat.setVisible(true);
				EI_Idazkaria_sortu_1_1_1.this.setVisible(false);}
			});
		btnAtzera.setBounds(292, 337, 89, 23);
		contentPane.add(btnAtzera);
		
		
			
		JLabel lblPostaKodea = new JLabel("Posta kodea");
		lblPostaKodea.setBounds(368, 154, 74, 14);
		contentPane.add(lblPostaKodea);
		
		postakod = new JTextField();
		postakod.setBounds(449, 152, 74, 20);
		contentPane.add(postakod);
		postakod.setColumns(10);
	
		JLabel label = new JLabel("Adib: 11111111v");
		label.setBounds(507, 43, 94, 14);
		contentPane.add(label);}
	
//metodoak IdazkariaSortu eta existitzenDA
	public void IdazkariaSortu(String a,String b, String c, String d, String e, String f, String g, int h, int i, String j, String l, 
			String m, int n, int o, int p, String q, String z, String r )  
	    {
	    		
	    		DBKudeatzailea dbk = DBKudeatzailea.getInstantzia();
	    		
	    	
	    		String k1 ="INSERT INTO idazkaria (`izena`, `lehenengoAbizena`, `bigarrenAbizena`, `NAN`, `jaiotzeData`, `sexua`, `helbidea`, `ataria`, `solairua`, `hizkia`, `probintzia`, " +
	    				"`herria`, `postaKodea`, `telefonoa`, `mugikorra`, `email`, `pasahitza`, `errepikatu`) " +
	    				"     VALUES ('" + izena.getText()  + "', '" + lehenAbiz.getText() + "' , '"+ bigarrenAbiz.getText() +"','"+  nan.getText() +"', '"+ data.getText() +  "', '" + (Gizona.isSelected()?"g":"e") +"',  '" + helbide.getText() +"', '" + Integer.parseInt(atari.getText()) +"'," +
	    						"'" +Integer.parseInt(solairu.getText()) +"', '" + hizkia.getText() +"', '" + probintzia.getText() +"', '" + herria.getText() +"', '" + Integer.parseInt(postakod.getText()) +"', '" + Integer.parseInt(telf.getText()) +"', '" + Integer.parseInt(mugi.getText()) +"', " +
	    								"'" + email.getText() +"', '" + pasahitz.getText() +"', '" + errepikatu.getText() +"')";        
                				

	    		System.out.println(k1);

	    		

	    		dbk.execSQL(k1);
			

	    			System.out.println("Ondo txertatu da");
	    		
	    		

	    }
	public boolean existitzenDa(String NAN) {
		DBKudeatzailea dbk = DBKudeatzailea.getInstantzia();
		String k1 =("SELECT * FROM idazkaria WHERE NAN='"+NAN+"'");

		System.out.println("k1 exekutatzen");
		ResultSet rs =  dbk.execSQL(k1);
		try {
			rs.next();
			System.out.println(rs.getString(0));
			rs.close();
			System.out.println("aurkituta");
			return true;

		} catch (SQLException e) {
			System.out.println("ez aurkituta");
			return false;
		}
	}
}
		